package com.yuexiao.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuexiao.pojo.Setmeal;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
* @author Administrator
* @description 针对表【setmeal(套餐)】的数据库操作Service
* @createDate 2022-08-10 14:10:57
*/
public interface SetmealService extends IService<Setmeal> {


    /**
     * 根据条件分页查询套餐数据
     * @param page int 当前页
     * @param pageSize int 每页显示条数
     * @param name String 查询条件套餐名
     * @return Page mybatisplus自带的分页对象
     */
    Page getSetmealPage(int page,int pageSize,String name);


    /**
     * 新增套餐数据
     * @param setmeal Setmeal 套餐实体类
     * @return boolean true or false
     */
    boolean insertSetmeal(Setmeal setmeal);


    /**
     * 根据id查询套餐数据
     * @param id Long 主键id
     * @return Setmeal 套餐对象
     */
    Setmeal getSetmealById(Long id);


    /**
     * 更新套餐信息
     * @param setmeal Setmeal 套餐对象
     * @return boolean true or false
     */
    boolean updateSetmeal(Setmeal setmeal);


    /**
     * 根据id数组更改套餐状态
     * @param status int 状态
     * @param ids Long[] id数组
     * @return boolean true or false
     */
    boolean updateStatusByIds(int status,Long[] ids);


    /**
     * 根据id数组删除套餐数据
     * @param ids Long[] id数组
     * @return boolean true or false
     */
    boolean deleteSetmeal(Long[] ids);


    /**
     * 根据分类id查询已经上架的套餐
     * @param cid Long 分类id
     * @param status int 上架状态
     * @return List<Setmeal> 套餐对象结合
     */
    List<Setmeal> getSetmealListByCid(Long cid,int status);
}
